package it.magazzinoCofi.controllers;

import it.magazzinoCofi.model.DataUserModel;
import it.magazzinoCofi.view.BaseFrame;
import it.magazzinoCofi.view.PView;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Observable;


public class UserLoginController extends Observable{
	

	/**
	* il controller deve interagire sia con la view che con il modello
	*/
	 private DataUserModel m_model;
	 /**
	  * Field m_view.
	  */
	 private BaseFrame  m_view;
  /**
   * Costruttore
   * @param model
   * @param view
   */
  public UserLoginController(DataUserModel model, BaseFrame view) {
      
	  this.addObserver(PView.getInstance()); //aggiungo l'osservatore
	  
	  this.m_model=model;
      this.m_view=view;
      
      /**
       * Aggiungo il listener di verifica (definito poco dopo) 
       */
      this.m_view.addSubmitListener(new SubmitListener());
  }
	
	public void processSubmitAction(){
		
	}
	
	
	
	
	
	class SubmitListener implements ActionListener{

		@Override
		public void actionPerformed(ActionEvent arg0) {
			
			/**
			 * Controllo credenziali e collegamento al MODEL
			 */
			setChanged();
		    notifyObservers(0);
		    
		    System.out.println("CONTROLLER - Tasto Submit premuto" );
			if(m_model.verifyUser())
				System.out.println("CONTROLLER - Utente esistente" );
			
			m_view.displayErrorMessage("PIPPO");
		    
		    setChanged();
		    notifyObservers(1);
		    
			
			
		}
		
	}

}
